home *** CD-ROM | disk | FTP | other *** search
- <* STANDARD- *> <* MAIN- *> <* INITIALISE- *>
-
- MODULE OELMsg;
- (****************************************************************
-
- This file was created automatically by `FlexCat 1.5'
- Do NOT edit by hand!
- Oberon-A source description C 1994 by Albert Weinert
- Using with Oberon-A Interfaces for AmigaOS Release 3.1
- Modified for Oberon-A 1.5 by Frank Copeland
-
- Application: OELMsg
- Language : "english"
- Version : 1
- Description: OBERON-A:Catalogs/OEL.cd
-
- ****************************************************************)
-
- IMPORT
- lo := Locale, e := Exec, u := Utility, y := SYSTEM;
-
- CONST
- builtinlanguage = "english";
- version = 1;
-
- CONST
- msgTemplate* = 0;
- msgArgError* = 1;
- msgCopyright* = 2;
- msgNotAnErrorFile* = 3;
-
- TYPE
- AppString = RECORD;
- id : LONGINT;
- str : e.LSTRPTR;
- END;
- AppStringArray = ARRAY 4 OF AppString;
-
- VAR
- AppStrings : AppStringArray;
- catalog : lo.CatalogPtr;
-
- PROCEDURE SetStrings;
- BEGIN
- AppStrings[0].id := msgTemplate; AppStrings[0].str := y.ADR( "MODULE/A,MODEXT/K,ERREXT/K,COLWIDTH/N,COLSEPERATOR/K,NOLINENUMBERS/S,ERRNUMBERS/S,NOANSI/S,TAGLENGTH/N,TABSIZE/N,ERRPATH/K" );
- AppStrings[1].id := msgArgError; AppStrings[1].str := y.ADR( "%s: Argument error.\n" );
- AppStrings[2].id := msgCopyright; AppStrings[2].str := y.ADR( "%s, Copyright © 1994 Johan Ferreira.\n"
- "OEL (Oberon-A Error Lister) comes with ABSOLUTELY NO WARRANTY.\n"
- "This is free software, and you are welcome to redistribute it\n"
- "under certain conditions. See OEL.guide for details.\n\n" );
- AppStrings[3].id := msgNotAnErrorFile; AppStrings[3].str := y.ADR( "%s: %s is not an Oberon-A error file.\n" );
- END SetStrings;
-
- PROCEDURE CloseCatalog*();
- BEGIN
- IF catalog # NIL THEN lo.CloseCatalog (catalog); catalog:=NIL END;
- END CloseCatalog;
-
- PROCEDURE OpenCatalog*(loc:lo.LocalePtr; language:ARRAY OF CHAR);
- VAR Tag : ARRAY 4 OF u.TagItem;
- BEGIN
- CloseCatalog();
- IF (catalog = NIL) & (lo.base # NIL) THEN
- Tag[0].tag := lo.builtInLanguage; Tag[0].data := y.ADR( builtinlanguage );
- Tag[1].tag := u.ignore; Tag[1].data := y.ADR( language );
- Tag[2].tag := lo.version; Tag[2].data := version;
- Tag[3].tag := u.done;
-
- IF language # "" THEN
- Tag[1].tag:= lo.language;
- END;
- catalog := lo.OpenCatalogA (loc, "OELMsg.catalog", Tag);
- END;
- END OpenCatalog;
-
- PROCEDURE GetString* (num: LONGINT): e.LSTRPTR;
- VAR
- i: LONGINT;
- default: e.LSTRPTR;
- BEGIN
- i := 0; WHILE (i < 4) & (AppStrings[i].id # num) DO INC (i) END;
-
- IF i # 4 THEN
- default := AppStrings[i].str;
- ELSE
- default := NIL;
- END;
-
- IF catalog # NIL THEN
- RETURN lo.GetCatalogStr (catalog, num, default^);
- ELSE
- RETURN default;
- END;
- END GetString;
-
- BEGIN
- catalog := NIL;
- SetStrings;
- END OELMsg.
-
-